A database software system is commonly used to produce various kinds of reports describing the data store in the database. In a human resources database system, for instance, reports are produced listing employees having a certain set of attributes. One desirable feature of database report generation software is not only to be able to filter by a particular attribute (e.g., show me all of the employees who work at the San Leandro site) but also to produce on-the-fly counts of database entries sorted by each attribute of various fields (e.g., show me the number of employees at each site; show me the number of employees with each manager, etc.). Some database systems can receive a command directed at one of the attributes (e.g., a mouse click on the San Leandro site) and display in response a list of entries filtered by that attribute and an updated set of counts of database entries sorted by each attribute of various fields within the list of entries filtered by the selected attribute (e.g., show me the number of employees with each manager at the San Leandro site). Producing a user interface that operates in such a manner requires very rapid access to the data set. Additionally, in a database system, it may be desirable to implement a security policy such that some users do not have access to all attributes of all database entries (e.g., a manager can see the salaries of his subordinates but not of his peers or his superiors).